package com.ruoyi.teaching.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 教学跟踪对象 sys_teaching_trace
 * 
 * @author ruoyi
 * @date 2024-03-23
 */
public class TeachingTrace extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键id */
    @Excel(name = "主键id")
    private Long id;

    /** 班级 */
    @Excel(name = "班级")
    private String className;

    /** 学生 */
    @Excel(name = "学生")
    private String studentName;

    /** 问题类型 0:跟踪-日常谈话 1:违纪-看视频 2:违纪-打游戏 3:违纪-看小说 */
    @Excel(name = "问题类型 0:跟踪-日常谈话 1:违纪-看视频 2:违纪-打游戏 3:违纪-看小说")
    private Long questionType;

    /** 扣分 */
    @Excel(name = "扣分")
    private Long deductPoints;

    /** 跟踪次数 */
    @Excel(name = "跟踪次数")
    private Long traceTimes;

    /** 跟踪老师 */
    @Excel(name = "跟踪老师")
    private String teacherName;

    /** 逻辑删除 0：删除 1：未删除 */
    @Excel(name = "逻辑删除 0：删除 1：未删除")
    private Long deleted;

    /** 班级id */
    @Excel(name = "班级id")
    private Long classId;

    /** 学生id */
    @Excel(name = "学生id")
    private Long studentId;

    /** 老师id */
    @Excel(name = "老师id")
    private Long teacherId;

    /** 发生时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "发生时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date happenTime;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setClassName(String className) 
    {
        this.className = className;
    }

    public String getClassName() 
    {
        return className;
    }
    public void setStudentName(String studentName) 
    {
        this.studentName = studentName;
    }

    public String getStudentName() 
    {
        return studentName;
    }
    public void setQuestionType(Long questionType) 
    {
        this.questionType = questionType;
    }

    public Long getQuestionType() 
    {
        return questionType;
    }
    public void setDeductPoints(Long deductPoints) 
    {
        this.deductPoints = deductPoints;
    }

    public Long getDeductPoints() 
    {
        return deductPoints;
    }
    public void setTraceTimes(Long traceTimes) 
    {
        this.traceTimes = traceTimes;
    }

    public Long getTraceTimes() 
    {
        return traceTimes;
    }
    public void setTeacherName(String teacherName) 
    {
        this.teacherName = teacherName;
    }

    public String getTeacherName() 
    {
        return teacherName;
    }
    public void setDeleted(Long deleted) 
    {
        this.deleted = deleted;
    }

    public Long getDeleted() 
    {
        return deleted;
    }
    public void setClassId(Long classId) 
    {
        this.classId = classId;
    }

    public Long getClassId() 
    {
        return classId;
    }
    public void setStudentId(Long studentId) 
    {
        this.studentId = studentId;
    }

    public Long getStudentId() 
    {
        return studentId;
    }
    public void setTeacherId(Long teacherId) 
    {
        this.teacherId = teacherId;
    }

    public Long getTeacherId() 
    {
        return teacherId;
    }
    public void setHappenTime(Date happenTime) 
    {
        this.happenTime = happenTime;
    }

    public Date getHappenTime() 
    {
        return happenTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("className", getClassName())
            .append("studentName", getStudentName())
            .append("questionType", getQuestionType())
            .append("deductPoints", getDeductPoints())
            .append("createTime", getCreateTime())
            .append("traceTimes", getTraceTimes())
            .append("teacherName", getTeacherName())
            .append("remark", getRemark())
            .append("deleted", getDeleted())
            .append("updateTime", getUpdateTime())
            .append("classId", getClassId())
            .append("studentId", getStudentId())
            .append("teacherId", getTeacherId())
            .append("happenTime", getHappenTime())
            .toString();
    }
}
